Package bg.smoc.web.servlet.judge

Source Code of bg.smoc.web.servlet.judge.MainJudgeServlet

/**
*
*/
package bg.smoc.web.servlet.judge;

import java.io.IOException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import kr.or.ioi2002.RMIServer.Util;
import bg.smoc.model.manager.GraderManager;
import bg.smoc.web.utils.SessionUtil;

/**
* @author tsvetan.bogdanov@gmail.com
*
*/
public class MainJudgeServlet extends HttpServlet {

    /**
   *
   */
    private static final long serialVersionUID = -212249266673072996L;

    @Override
    protected void service(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        GraderManager graderManager = SessionUtil.getInstance().getGraderManager();
        attachMachineQueue(request, "busyQueue", graderManager.getBusyMachineQueue());
        attachMachineQueue(request, "idleQueue", graderManager.getIdleMachineQueue());
        request.setAttribute("submitQueue", graderManager.getSubmitQueue());
        request.setAttribute("testQueue", graderManager.getTestQueue());
        request.setAttribute("gradeQueue", graderManager.getGradeQueue());

        request.setAttribute("autoreload", request.getParameter("autoreload"));
        loadSystemTime(request);

        request.getRequestDispatcher("main.jsp").forward(request, response);
    }

    private void attachMachineQueue(HttpServletRequest request, String attributeName,
            String[] machineQueue) {
        List<String[]> tokenizedQueue = new ArrayList<String[]>();

        for (String machineInfo : machineQueue)
            tokenizedQueue.add(machineInfo.split(","));

        request.setAttribute(attributeName, tokenizedQueue);
    }

    /**
     * Sets the system time as dateTimeNow attribute of the request.
     *
     * @param request
     *            the request where "now" has to be attached
     */
    private void loadSystemTime(HttpServletRequest request) {
        request.setAttribute("dateTimeNow", Util.DATETIME_FORMAT.format(new Date()));
    }
}
TOP

Related Classes of bg.smoc.web.servlet.judge.MainJudgeServlet

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.